#ifndef WHEEL_H
#define WHEEL_H

/**
 * This class controls a physical wheel on the robot.
 */
class Wheel
{
public:
	/**
	 * Enumeration of the side of the robot the wheel is on.
	 */
	enum WheelType
	{
		LEFT,
		RIGHT
	};

	/**
	 * Constructor.
	 *
	 * @param enumerated side the wheel is on. To be stored in the type variable.
	 * @see type
	 */
	Wheel(WheelType type);

	/**
	 * Turns the wheel forward.
	 */
	void forward();

	/**
	 * Reverses the wheel.
	 */
	void backward();
	/**
	 * Stops the wheel.
	 */
	void stop();
private:
	/**
	 * Enumerated side of the robot the wheel is on.
	 */
	WheelType type;
};
#endif
